package com.fulihui.wgj.facade.service.wxuser;

import com.fulihui.common.error.InvokeServiceException;
import com.fulihui.common.result.rpc.BaseResult;
import com.fulihui.common.result.rpc.SimpleResult;
import com.fulihui.wgj.facade.dto.WxHistorySendUserDTO;
import com.fulihui.wgj.facade.dto.WxUserInfoDTO;
import com.fulihui.wgj.facade.request.wx48.WxUserInfoSendSingle48HRequest;
import com.fulihui.wgj.facade.request.wxuser.WxHistorySendUserQueryRequest;
import com.fulihui.wgj.facade.request.wxuser.WxUserInfoPreviewQueryRequest;

import java.util.List;

/**
 * 微信用户Service
 *
 * @author wang_wx
 * @date 2018-06-27
 */
public interface WxUserInfoService {


    /**
     * 发送单个用户预览--for 微信48小时
     *
     * @param request
     * @return
     * @throws InvokeServiceException
     */
    BaseResult sendSingleUserWx48H(WxUserInfoSendSingle48HRequest request) throws InvokeServiceException;

    /**
     * 查询微信用户预览
     *
     * @param request
     * @return
     * @throws InvokeServiceException
     */
    SimpleResult<List<WxUserInfoDTO>> queryWxUserPreview(WxUserInfoPreviewQueryRequest request) throws InvokeServiceException;

    /**
     * 查询历史发送用户-用于预览
     *
     * @param request
     * @return
     * @throws InvokeServiceException
     */
    SimpleResult<List<WxHistorySendUserDTO>> queryHistorySendUser(WxHistorySendUserQueryRequest request) throws InvokeServiceException;

}
